<!-- HTML header for doxygen 1.8.18-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Ipopt: src/LinAlg/IpMultiVectorMatrix.hpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(function() { init_search(); });
/* @license-end */
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="stylesheet.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 40px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Ipopt Documentation
   &#160;<!--span id="projectnumber">3.14.12</span-->
   </div>
  </td>
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IpMultiVectorMatrix_8hpp_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">IpMultiVectorMatrix.hpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="IpMultiVectorMatrix_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright (C) 2005, 2008 International Business Machines and others.</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">// All Rights Reserved.</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">// This code is published under the Eclipse Public License.</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">// Authors:  Andreas Waechter             IBM    2005-12-24</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#ifndef __IPMULTIVECTORMATRIX_HPP__</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define __IPMULTIVECTORMATRIX_HPP__</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IpUtils_8hpp.html">IpUtils.hpp</a>&quot;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IpMatrix_8hpp.html">IpMatrix.hpp</a>&quot;</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160; </div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceIpopt.html">Ipopt</a></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;{</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160; </div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="keyword">class </span>MultiVectorMatrixSpace;</div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html">   24</a></span>&#160;<span class="keyword">class </span><a class="code" href="config__default_8h.html#a58bb5c104ee5ff44b7175fc992d89b0b">IPOPTLIB_EXPORT</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>: <span class="keyword">public</span> <a class="code" href="classIpopt_1_1Matrix.html">Matrix</a></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;{</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#afe57e0a1c83d02c1df37a37594b05882">   31</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#afe57e0a1c83d02c1df37a37594b05882">MultiVectorMatrix</a>(</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html">MultiVectorMatrixSpace</a>* owner_space</div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;   );</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;   ~<a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>();</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;   <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;MultiVectorMatrix&gt;</a> MakeNewMultiVectorMatrix() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;   <span class="keywordtype">void</span> SetVector(</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>         i,</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; vec</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;   );</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;   <span class="comment">/* For the non-const version, keep in mind that operations that</span></div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;<span class="comment">    * change this matrix also change the Vector that has been given</span></div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;<span class="comment">    * here.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="comment">    */</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#af91d910dba267d36761353030c19566c">   57</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#af91d910dba267d36761353030c19566c">SetVectorNonConst</a>(</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>   i,</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; vec</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;   );</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160; </div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#aa9f6256fd6892c693ed9829f91752e7f">   64</a></span>&#160;   <span class="keyword">inline</span> <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const Vector&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#aa9f6256fd6892c693ed9829f91752e7f">GetVector</a>(</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> i</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;   )<span class="keyword"> const</span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">   </span>{</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;      <span class="keywordflow">return</span> ConstVec(i);</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;   }</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a79cf95ba06eaebf1d887cff588687145">   76</a></span>&#160;   <span class="keyword">inline</span> <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;Vector&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a79cf95ba06eaebf1d887cff588687145">GetVectorNonConst</a>(</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> i</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;   )</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;   {</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;      ObjectChanged();</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;      <span class="keywordflow">return</span> Vec(i);</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;   }</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160; </div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a2b28a9b36727a342ee511398ab1e77c6">   87</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a2b28a9b36727a342ee511398ab1e77c6">ScaleRows</a>(</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; scal_vec</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;   );</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160; </div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#afeae0f7a1d8c40213c24d3fe3251e63b">   94</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#afeae0f7a1d8c40213c24d3fe3251e63b">ScaleColumns</a>(</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; scal_vec);</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a2d0bfc4c6315d41712c3051e8b1545c6">  100</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a2d0bfc4c6315d41712c3051e8b1545c6">AddOneMultiVectorMatrix</a>(</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>                   a,</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>&amp; mv1,</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>                   c</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;   );</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a34cf60b561c14c9bbcc7b2909d2ce71a">  110</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a34cf60b561c14c9bbcc7b2909d2ce71a">AddRightMultMatrix</a>(</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>                   a,</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>&amp; U,</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Matrix.html">Matrix</a>&amp;            C,</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>                   b</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;   );</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160; </div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a6a63d99a4f15a4706b6365ecc3cff815">  118</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a6a63d99a4f15a4706b6365ecc3cff815">FillWithNewVectors</a>();</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a740781de9b1febf032144a41c4fd9e0f">  126</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a740781de9b1febf032144a41c4fd9e0f">LRMultVector</a>(</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        alpha,</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; x,</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        beta,</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp;       y</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;   <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const VectorSpace&gt;</a> ColVectorSpace() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;   <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const MultiVectorMatrixSpace&gt;</a> MultiVectorMatrixOwnerSpace() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160; </div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">void</span> MultVectorImpl(</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        alpha,</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; x,</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        beta,</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp;       y</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160; </div>
<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a48392d423a633c69e713980d439d8840">  149</a></span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a48392d423a633c69e713980d439d8840">TransMultVectorImpl</a>(</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        alpha,</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; x,</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;      <a class="code" href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Number</a>        beta,</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp;       y</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#abedeaa1f8442a208bdec2395c1c9d8a4">  156</a></span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#abedeaa1f8442a208bdec2395c1c9d8a4">HasValidNumbersImpl</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a215f036fadae290e78849076c932e919">  158</a></span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a215f036fadae290e78849076c932e919">ComputeRowAMaxImpl</a>(</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; rows_norms,</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;      <span class="keywordtype">bool</span>    init</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160; </div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#ad1eb04bd384471b81afec75e7bc6bcdb">  163</a></span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#ad1eb04bd384471b81afec75e7bc6bcdb">ComputeColAMaxImpl</a>(</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;      <a class="code" href="classIpopt_1_1Vector.html">Vector</a>&amp; cols_norms,</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;      <span class="keywordtype">bool</span>    init</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#ad988a7c96a16629eb5308de09a20ba06">  168</a></span>&#160;   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#ad988a7c96a16629eb5308de09a20ba06">PrintImpl</a>(</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Journalist.html">Journalist</a>&amp;  jnlst,</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;      <a class="code" href="namespaceIpopt.html#a9a3bf04074c3113604067ee277e690ea">EJournalLevel</a>      level,</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;      <a class="code" href="namespaceIpopt.html#a6cd36af5585112f521733f3e63fd8cb0">EJournalCategory</a>   category,</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;      <span class="keyword">const</span> std::string&amp; name,</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>              indent,</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;      <span class="keyword">const</span> std::string&amp; prefix</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;   ) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160; </div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a474c093e1c24f600e2b11fd9a104beac">  189</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a474c093e1c24f600e2b11fd9a104beac">MultiVectorMatrix</a>();</div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160; </div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a3ffed460766e6b21a5248f608e50916d">  192</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a3ffed460766e6b21a5248f608e50916d">MultiVectorMatrix</a>(</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>&amp;</div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;   );</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160; </div>
<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a41acb09e075472db051ec38cb107eb0c">  197</a></span>&#160;   <span class="keywordtype">void</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a41acb09e075472db051ec38cb107eb0c">operator=</a>(</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>&amp;</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;   );</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160; </div>
<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">  202</a></span>&#160;   <span class="keyword">const</span> <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html">MultiVectorMatrixSpace</a>* <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">owner_space_</a>;</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160; </div>
<div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#accfafd2d99df3186da3a59fba47ee852">  205</a></span>&#160;   std::vector&lt;SmartPtr&lt;const Vector&gt; &gt; <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#accfafd2d99df3186da3a59fba47ee852">const_vecs_</a>;</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160; </div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#af7ff876dadad874728810cb4cc8bea60">  208</a></span>&#160;   std::vector&lt;SmartPtr&lt;Vector&gt; &gt; <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#af7ff876dadad874728810cb4cc8bea60">non_const_vecs_</a>;</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160; </div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;   <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>* ConstVec(</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> i</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;   )<span class="keyword"> const</span></div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;<span class="keyword">   </span>{</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;      <a class="code" href="IpDebug_8hpp.html#a346733cd6806024295f8c3564071d021">DBG_ASSERT</a>(i &lt; NCols());</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;      <a class="code" href="IpDebug_8hpp.html#a346733cd6806024295f8c3564071d021">DBG_ASSERT</a>(<a class="code" href="namespaceIpopt.html#a412b04fd3180a55969ff76224d5bfec6">IsValid</a>(const_vecs_[i]) || <a class="code" href="namespaceIpopt.html#a412b04fd3180a55969ff76224d5bfec6">IsValid</a>(non_const_vecs_[i]));</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;      <span class="keywordflow">if</span>( <a class="code" href="namespaceIpopt.html#a412b04fd3180a55969ff76224d5bfec6">IsValid</a>(non_const_vecs_[i]) )</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;      {</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;         <span class="keywordflow">return</span> <a class="code" href="namespaceIpopt.html#a4ae001947e506b5b8f4f134b8a4ead23">GetRawPtr</a>(non_const_vecs_[i]);</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;      }</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;      <span class="keywordflow">else</span></div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;      {</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;         <span class="keywordflow">return</span> <a class="code" href="namespaceIpopt.html#a4ae001947e506b5b8f4f134b8a4ead23">GetRawPtr</a>(const_vecs_[i]);</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;      }</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;   }</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a53b7dc1f588a4a275d63226d23dec792">  228</a></span>&#160;   <span class="keyword">inline</span> <a class="code" href="classIpopt_1_1Vector.html">Vector</a>* <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a53b7dc1f588a4a275d63226d23dec792">Vec</a>(</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a> i</div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;   )</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;   {</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;      <a class="code" href="IpDebug_8hpp.html#a346733cd6806024295f8c3564071d021">DBG_ASSERT</a>(i &lt; NCols());</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;      <a class="code" href="IpDebug_8hpp.html#a346733cd6806024295f8c3564071d021">DBG_ASSERT</a>(<a class="code" href="namespaceIpopt.html#a412b04fd3180a55969ff76224d5bfec6">IsValid</a>(non_const_vecs_[i]));</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;      <span class="keywordflow">return</span> <a class="code" href="namespaceIpopt.html#a4ae001947e506b5b8f4f134b8a4ead23">GetRawPtr</a>(non_const_vecs_[i]);</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;   }</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;};</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; </div>
<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html">  240</a></span>&#160;<span class="keyword">class </span><a class="code" href="config__default_8h.html#a58bb5c104ee5ff44b7175fc992d89b0b">IPOPTLIB_EXPORT</a> <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html">MultiVectorMatrixSpace</a>: <span class="keyword">public</span> <a class="code" href="classIpopt_1_1MatrixSpace.html">MatrixSpace</a></div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;{</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160; </div>
<div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#a7f2dcde8ea9510c7b79d4b22ebc8d62a">  248</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a7f2dcde8ea9510c7b79d4b22ebc8d62a">MultiVectorMatrixSpace</a>(</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;      <a class="code" href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Index</a>              ncols,</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;      <span class="keyword">const</span> <a class="code" href="classIpopt_1_1VectorSpace.html">VectorSpace</a>&amp; vec_space</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;   );</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#a17cdb8a48f701bd9eb428a7a5ff51009">  254</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a17cdb8a48f701bd9eb428a7a5ff51009">~MultiVectorMatrixSpace</a>()</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;   { }</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160; </div>
<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#a8517749dc8272ae64f34397c453a9307">  259</a></span>&#160;   <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>* <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a8517749dc8272ae64f34397c453a9307">MakeNewMultiVectorMatrix</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;<span class="keyword">   </span>{</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;      <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html">MultiVectorMatrix</a>(<span class="keyword">this</span>);</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;   }</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160; </div>
<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#a75e6775e4e5b40b91df8fa29e6cd71cf">  264</a></span>&#160;   <span class="keyword">virtual</span> <a class="code" href="classIpopt_1_1Matrix.html">Matrix</a>* <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a75e6775e4e5b40b91df8fa29e6cd71cf">MakeNew</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;<span class="keyword">   </span>{</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;      <span class="keywordflow">return</span> MakeNewMultiVectorMatrix();</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;   }</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160; </div>
<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#a729d232eacdcc8f35db15acae193820f">  270</a></span>&#160;   <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const VectorSpace&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a729d232eacdcc8f35db15acae193820f">ColVectorSpace</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="keyword">   </span>{</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;      <span class="keywordflow">return</span> vec_space_;</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;   }</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160; </div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrixSpace.html#aeae2d3e9995c92acbd142d52b9243dbd">  276</a></span>&#160;   <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const VectorSpace&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#aeae2d3e9995c92acbd142d52b9243dbd">vec_space_</a>;</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160; </div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;};</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160; </div>
<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a52b564b5d8f4b09226d08b9dfcc5e498">  280</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a52b564b5d8f4b09226d08b9dfcc5e498">MultiVectorMatrix::~MultiVectorMatrix</a>()</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;{ }</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160; </div>
<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#accf2c28d8a59c638ecc4badb784b41ae">  283</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;MultiVectorMatrix&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#accf2c28d8a59c638ecc4badb784b41ae">MultiVectorMatrix::MakeNewMultiVectorMatrix</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;   <span class="keywordflow">return</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">owner_space_</a>-&gt;<a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a8517749dc8272ae64f34397c453a9307">MakeNewMultiVectorMatrix</a>();</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;}</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160; </div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a83b0006f810c72c4896945717b404e8e">  288</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const VectorSpace&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a83b0006f810c72c4896945717b404e8e">MultiVectorMatrix::ColVectorSpace</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;   <span class="keywordflow">return</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">owner_space_</a>-&gt;<a class="code" href="classIpopt_1_1MultiVectorMatrixSpace.html#a729d232eacdcc8f35db15acae193820f">ColVectorSpace</a>();</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;}</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160; </div>
<div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classIpopt_1_1MultiVectorMatrix.html#a70b1d2c2f144ccbd0d9e3eceef8739fa">  293</a></span>&#160;<span class="keyword">inline</span> <a class="code" href="classIpopt_1_1SmartPtr.html">SmartPtr&lt;const MultiVectorMatrixSpace&gt;</a> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a70b1d2c2f144ccbd0d9e3eceef8739fa">MultiVectorMatrix::MultiVectorMatrixOwnerSpace</a>()<span class="keyword"> const</span></div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;<span class="keyword"></span>{</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;   <span class="keywordflow">return</span> <a class="code" href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">owner_space_</a>;</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;}</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;} <span class="comment">// namespace Ipopt</span></div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aIpUtils_8hpp_html"><div class="ttname"><a href="IpUtils_8hpp.html">IpUtils.hpp</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MatrixSpace_html"><div class="ttname"><a href="classIpopt_1_1MatrixSpace.html">Ipopt::MatrixSpace</a></div><div class="ttdoc">MatrixSpace base class, corresponding to the Matrix base class.</div><div class="ttdef"><b>Definition:</b> <a href="IpMatrix_8hpp_source.html#l00326">IpMatrix.hpp:327</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a6a63d99a4f15a4706b6365ecc3cff815"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a6a63d99a4f15a4706b6365ecc3cff815">Ipopt::MultiVectorMatrix::FillWithNewVectors</a></div><div class="ttdeci">void FillWithNewVectors()</div><div class="ttdoc">Method for initializing all Vectors with new (uninitialized) Vectors.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a740781de9b1febf032144a41c4fd9e0f"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a740781de9b1febf032144a41c4fd9e0f">Ipopt::MultiVectorMatrix::LRMultVector</a></div><div class="ttdeci">void LRMultVector(Number alpha, const Vector &amp;x, Number beta, Vector &amp;y) const</div><div class="ttdoc">Method for adding the low-rank update matrix corresponding to this matrix to a vector.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html">Ipopt::MultiVectorMatrix</a></div><div class="ttdoc">Class for Matrices with few columns that consists of Vectors.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00024">IpMultiVectorMatrix.hpp:25</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a474c093e1c24f600e2b11fd9a104beac"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a474c093e1c24f600e2b11fd9a104beac">Ipopt::MultiVectorMatrix::MultiVectorMatrix</a></div><div class="ttdeci">MultiVectorMatrix()</div><div class="ttdoc">Default Constructor.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_accf2c28d8a59c638ecc4badb784b41ae"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#accf2c28d8a59c638ecc4badb784b41ae">Ipopt::MultiVectorMatrix::MakeNewMultiVectorMatrix</a></div><div class="ttdeci">SmartPtr&lt; MultiVectorMatrix &gt; MakeNewMultiVectorMatrix() const</div><div class="ttdoc">Create a new MultiVectorMatrix from same MatrixSpace.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00283">IpMultiVectorMatrix.hpp:283</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_ad988a7c96a16629eb5308de09a20ba06"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#ad988a7c96a16629eb5308de09a20ba06">Ipopt::MultiVectorMatrix::PrintImpl</a></div><div class="ttdeci">virtual void PrintImpl(const Journalist &amp;jnlst, EJournalLevel level, EJournalCategory category, const std::string &amp;name, Index indent, const std::string &amp;prefix) const</div><div class="ttdoc">Print detailed information about the matrix.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_abedeaa1f8442a208bdec2395c1c9d8a4"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#abedeaa1f8442a208bdec2395c1c9d8a4">Ipopt::MultiVectorMatrix::HasValidNumbersImpl</a></div><div class="ttdeci">virtual bool HasValidNumbersImpl() const</div><div class="ttdoc">Method for determining if all stored numbers are valid (i.e., no Inf or Nan).</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_a17cdb8a48f701bd9eb428a7a5ff51009"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#a17cdb8a48f701bd9eb428a7a5ff51009">Ipopt::MultiVectorMatrixSpace::~MultiVectorMatrixSpace</a></div><div class="ttdeci">~MultiVectorMatrixSpace()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00254">IpMultiVectorMatrix.hpp:254</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_ad1eb04bd384471b81afec75e7bc6bcdb"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#ad1eb04bd384471b81afec75e7bc6bcdb">Ipopt::MultiVectorMatrix::ComputeColAMaxImpl</a></div><div class="ttdeci">virtual void ComputeColAMaxImpl(Vector &amp;cols_norms, bool init) const</div><div class="ttdoc">Compute the max-norm of the columns in the matrix.</div></div>
<div class="ttc" id="anamespaceIpopt_html"><div class="ttname"><a href="namespaceIpopt.html">Ipopt</a></div><div class="ttdoc">This file contains a base class for all exceptions and a set of macros to help with exceptions.</div><div class="ttdef"><b>Definition:</b> <a href="IpInexactAlgBuilder_8hpp_source.html#l00013">IpInexactAlgBuilder.hpp:14</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_af91d910dba267d36761353030c19566c"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#af91d910dba267d36761353030c19566c">Ipopt::MultiVectorMatrix::SetVectorNonConst</a></div><div class="ttdeci">void SetVectorNonConst(Index i, Vector &amp;vec)</div></div>
<div class="ttc" id="aclassIpopt_1_1Matrix_html"><div class="ttname"><a href="classIpopt_1_1Matrix.html">Ipopt::Matrix</a></div><div class="ttdoc">Matrix Base Class.</div><div class="ttdef"><b>Definition:</b> <a href="IpMatrix_8hpp_source.html#l00027">IpMatrix.hpp:28</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_a8517749dc8272ae64f34397c453a9307"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#a8517749dc8272ae64f34397c453a9307">Ipopt::MultiVectorMatrixSpace::MakeNewMultiVectorMatrix</a></div><div class="ttdeci">MultiVectorMatrix * MakeNewMultiVectorMatrix() const</div><div class="ttdoc">Method for creating a new matrix of this specific type.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00259">IpMultiVectorMatrix.hpp:259</a></div></div>
<div class="ttc" id="anamespaceIpopt_html_a9a3bf04074c3113604067ee277e690ea"><div class="ttname"><a href="namespaceIpopt.html#a9a3bf04074c3113604067ee277e690ea">Ipopt::EJournalLevel</a></div><div class="ttdeci">EJournalLevel</div><div class="ttdoc">Print Level Enum.</div><div class="ttdef"><b>Definition:</b> <a href="IpJournalist_8hpp_source.html#l00031">IpJournalist.hpp:32</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a52b564b5d8f4b09226d08b9dfcc5e498"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a52b564b5d8f4b09226d08b9dfcc5e498">Ipopt::MultiVectorMatrix::~MultiVectorMatrix</a></div><div class="ttdeci">~MultiVectorMatrix()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00280">IpMultiVectorMatrix.hpp:280</a></div></div>
<div class="ttc" id="aconfig__default_8h_html_a58bb5c104ee5ff44b7175fc992d89b0b"><div class="ttname"><a href="config__default_8h.html#a58bb5c104ee5ff44b7175fc992d89b0b">IPOPTLIB_EXPORT</a></div><div class="ttdeci">#define IPOPTLIB_EXPORT</div><div class="ttdef"><b>Definition:</b> <a href="config__default_8h_source.html#l00011">config_default.h:10</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a53b7dc1f588a4a275d63226d23dec792"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a53b7dc1f588a4a275d63226d23dec792">Ipopt::MultiVectorMatrix::Vec</a></div><div class="ttdeci">Vector * Vec(Index i)</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00228">IpMultiVectorMatrix.hpp:228</a></div></div>
<div class="ttc" id="anamespaceIpopt_html_a4ae001947e506b5b8f4f134b8a4ead23"><div class="ttname"><a href="namespaceIpopt.html#a4ae001947e506b5b8f4f134b8a4ead23">Ipopt::GetRawPtr</a></div><div class="ttdeci">U * GetRawPtr(const SmartPtr&lt; U &gt; &amp;smart_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="IpSmartPtr_8hpp_source.html#l00649">IpSmartPtr.hpp:649</a></div></div>
<div class="ttc" id="aclassIpopt_1_1SmartPtr_html"><div class="ttname"><a href="classIpopt_1_1SmartPtr.html">Ipopt::SmartPtr</a></div><div class="ttdoc">Template class for Smart Pointers.</div><div class="ttdef"><b>Definition:</b> <a href="IpSmartPtr_8hpp_source.html#l00164">IpSmartPtr.hpp:165</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_a729d232eacdcc8f35db15acae193820f"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#a729d232eacdcc8f35db15acae193820f">Ipopt::MultiVectorMatrixSpace::ColVectorSpace</a></div><div class="ttdeci">SmartPtr&lt; const VectorSpace &gt; ColVectorSpace() const</div><div class="ttdoc">Accessor method for the VectorSpace for the columns.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00270">IpMultiVectorMatrix.hpp:270</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_aa9f6256fd6892c693ed9829f91752e7f"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#aa9f6256fd6892c693ed9829f91752e7f">Ipopt::MultiVectorMatrix::GetVector</a></div><div class="ttdeci">SmartPtr&lt; const Vector &gt; GetVector(Index i) const</div><div class="ttdoc">Get a Vector in a particular column as a const Vector.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00064">IpMultiVectorMatrix.hpp:64</a></div></div>
<div class="ttc" id="anamespaceIpopt_html_a6cd36af5585112f521733f3e63fd8cb0"><div class="ttname"><a href="namespaceIpopt.html#a6cd36af5585112f521733f3e63fd8cb0">Ipopt::EJournalCategory</a></div><div class="ttdeci">EJournalCategory</div><div class="ttdoc">Category Selection Enum.</div><div class="ttdef"><b>Definition:</b> <a href="IpJournalist_8hpp_source.html#l00051">IpJournalist.hpp:52</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a2d0bfc4c6315d41712c3051e8b1545c6"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a2d0bfc4c6315d41712c3051e8b1545c6">Ipopt::MultiVectorMatrix::AddOneMultiVectorMatrix</a></div><div class="ttdeci">void AddOneMultiVectorMatrix(Number a, const MultiVectorMatrix &amp;mv1, Number c)</div><div class="ttdoc">Adding another MultiVectorMatrix, using the AddOneVector methods for the individual column vectors.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_af7ff876dadad874728810cb4cc8bea60"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#af7ff876dadad874728810cb4cc8bea60">Ipopt::MultiVectorMatrix::non_const_vecs_</a></div><div class="ttdeci">std::vector&lt; SmartPtr&lt; Vector &gt; &gt; non_const_vecs_</div><div class="ttdoc">space for storing the non-const Vector's</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00208">IpMultiVectorMatrix.hpp:208</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a83b0006f810c72c4896945717b404e8e"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a83b0006f810c72c4896945717b404e8e">Ipopt::MultiVectorMatrix::ColVectorSpace</a></div><div class="ttdeci">SmartPtr&lt; const VectorSpace &gt; ColVectorSpace() const</div><div class="ttdoc">Vector space for the columns.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00288">IpMultiVectorMatrix.hpp:288</a></div></div>
<div class="ttc" id="anamespaceIpopt_html_a5a4a27f325033a0e5d85a4ebc4038b57"><div class="ttname"><a href="namespaceIpopt.html#a5a4a27f325033a0e5d85a4ebc4038b57">Ipopt::Index</a></div><div class="ttdeci">ipindex Index</div><div class="ttdoc">Type of all indices of vectors, matrices etc.</div><div class="ttdef"><b>Definition:</b> <a href="IpTypes_8hpp_source.html#l00020">IpTypes.hpp:20</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a215f036fadae290e78849076c932e919"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a215f036fadae290e78849076c932e919">Ipopt::MultiVectorMatrix::ComputeRowAMaxImpl</a></div><div class="ttdeci">virtual void ComputeRowAMaxImpl(Vector &amp;rows_norms, bool init) const</div><div class="ttdoc">Compute the max-norm of the rows in the matrix.</div></div>
<div class="ttc" id="anamespaceIpopt_html_ab75ce5f2ad60aa86e4dff723998e653f"><div class="ttname"><a href="namespaceIpopt.html#ab75ce5f2ad60aa86e4dff723998e653f">Ipopt::Number</a></div><div class="ttdeci">ipnumber Number</div><div class="ttdoc">Type of all numbers.</div><div class="ttdef"><b>Definition:</b> <a href="IpTypes_8hpp_source.html#l00017">IpTypes.hpp:17</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a2b28a9b36727a342ee511398ab1e77c6"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a2b28a9b36727a342ee511398ab1e77c6">Ipopt::MultiVectorMatrix::ScaleRows</a></div><div class="ttdeci">void ScaleRows(const Vector &amp;scal_vec)</div><div class="ttdoc">Method for scaling the rows of the matrix, using the ElementWiseMultiply method for each column vecto...</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_a7f2dcde8ea9510c7b79d4b22ebc8d62a"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#a7f2dcde8ea9510c7b79d4b22ebc8d62a">Ipopt::MultiVectorMatrixSpace::MultiVectorMatrixSpace</a></div><div class="ttdeci">MultiVectorMatrixSpace(Index ncols, const VectorSpace &amp;vec_space)</div><div class="ttdoc">Constructor, given the number of columns (i.e., Vectors to be stored) and given the VectorSpace for t...</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_afe57e0a1c83d02c1df37a37594b05882"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#afe57e0a1c83d02c1df37a37594b05882">Ipopt::MultiVectorMatrix::MultiVectorMatrix</a></div><div class="ttdeci">MultiVectorMatrix(const MultiVectorMatrixSpace *owner_space)</div><div class="ttdoc">Constructor, taking the owner_space.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a79cf95ba06eaebf1d887cff588687145"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a79cf95ba06eaebf1d887cff588687145">Ipopt::MultiVectorMatrix::GetVectorNonConst</a></div><div class="ttdeci">SmartPtr&lt; Vector &gt; GetVectorNonConst(Index i)</div><div class="ttdoc">Get a Vector in a particular column as a non-const Vector.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00076">IpMultiVectorMatrix.hpp:76</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a3ffed460766e6b21a5248f608e50916d"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a3ffed460766e6b21a5248f608e50916d">Ipopt::MultiVectorMatrix::MultiVectorMatrix</a></div><div class="ttdeci">MultiVectorMatrix(const MultiVectorMatrix &amp;)</div><div class="ttdoc">Copy Constructor.</div></div>
<div class="ttc" id="aclassIpopt_1_1Journalist_html"><div class="ttname"><a href="classIpopt_1_1Journalist.html">Ipopt::Journalist</a></div><div class="ttdoc">Class responsible for all message output.</div><div class="ttdef"><b>Definition:</b> <a href="IpJournalist_8hpp_source.html#l00116">IpJournalist.hpp:117</a></div></div>
<div class="ttc" id="aclassIpopt_1_1VectorSpace_html"><div class="ttname"><a href="classIpopt_1_1VectorSpace.html">Ipopt::VectorSpace</a></div><div class="ttdoc">VectorSpace base class, corresponding to the Vector base class.</div><div class="ttdef"><b>Definition:</b> <a href="IpVector_8hpp_source.html#l00472">IpVector.hpp:473</a></div></div>
<div class="ttc" id="aIpMatrix_8hpp_html"><div class="ttname"><a href="IpMatrix_8hpp.html">IpMatrix.hpp</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html">Ipopt::MultiVectorMatrixSpace</a></div><div class="ttdoc">This is the matrix space for MultiVectorMatrix.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00240">IpMultiVectorMatrix.hpp:241</a></div></div>
<div class="ttc" id="anamespaceIpopt_html_a412b04fd3180a55969ff76224d5bfec6"><div class="ttname"><a href="namespaceIpopt.html#a412b04fd3180a55969ff76224d5bfec6">Ipopt::IsValid</a></div><div class="ttdeci">bool IsValid(const SmartPtr&lt; U &gt; &amp;smart_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="IpSmartPtr_8hpp_source.html#l00672">IpSmartPtr.hpp:672</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_aeae2d3e9995c92acbd142d52b9243dbd"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#aeae2d3e9995c92acbd142d52b9243dbd">Ipopt::MultiVectorMatrixSpace::vec_space_</a></div><div class="ttdeci">SmartPtr&lt; const VectorSpace &gt; vec_space_</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00276">IpMultiVectorMatrix.hpp:276</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrixSpace_html_a75e6775e4e5b40b91df8fa29e6cd71cf"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrixSpace.html#a75e6775e4e5b40b91df8fa29e6cd71cf">Ipopt::MultiVectorMatrixSpace::MakeNew</a></div><div class="ttdeci">virtual Matrix * MakeNew() const</div><div class="ttdoc">Pure virtual method for creating a new Matrix of the corresponding type.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00264">IpMultiVectorMatrix.hpp:264</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a70b1d2c2f144ccbd0d9e3eceef8739fa"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a70b1d2c2f144ccbd0d9e3eceef8739fa">Ipopt::MultiVectorMatrix::MultiVectorMatrixOwnerSpace</a></div><div class="ttdeci">SmartPtr&lt; const MultiVectorMatrixSpace &gt; MultiVectorMatrixOwnerSpace() const</div><div class="ttdoc">Return the MultiVectorMatrixSpace.</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00293">IpMultiVectorMatrix.hpp:293</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_accfafd2d99df3186da3a59fba47ee852"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#accfafd2d99df3186da3a59fba47ee852">Ipopt::MultiVectorMatrix::const_vecs_</a></div><div class="ttdeci">std::vector&lt; SmartPtr&lt; const Vector &gt; &gt; const_vecs_</div><div class="ttdoc">space for storing the const Vector's</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00205">IpMultiVectorMatrix.hpp:205</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a6f0c1900d37f075d345b54dd2176e200"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a6f0c1900d37f075d345b54dd2176e200">Ipopt::MultiVectorMatrix::owner_space_</a></div><div class="ttdeci">const MultiVectorMatrixSpace * owner_space_</div><div class="ttdef"><b>Definition:</b> <a href="IpMultiVectorMatrix_8hpp_source.html#l00202">IpMultiVectorMatrix.hpp:202</a></div></div>
<div class="ttc" id="aIpDebug_8hpp_html_a346733cd6806024295f8c3564071d021"><div class="ttname"><a href="IpDebug_8hpp.html#a346733cd6806024295f8c3564071d021">DBG_ASSERT</a></div><div class="ttdeci">#define DBG_ASSERT(test)</div><div class="ttdef"><b>Definition:</b> <a href="IpDebug_8hpp_source.html#l00028">IpDebug.hpp:27</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a48392d423a633c69e713980d439d8840"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a48392d423a633c69e713980d439d8840">Ipopt::MultiVectorMatrix::TransMultVectorImpl</a></div><div class="ttdeci">virtual void TransMultVectorImpl(Number alpha, const Vector &amp;x, Number beta, Vector &amp;y) const</div><div class="ttdoc">Matrix(transpose) vector multiply.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_afeae0f7a1d8c40213c24d3fe3251e63b"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#afeae0f7a1d8c40213c24d3fe3251e63b">Ipopt::MultiVectorMatrix::ScaleColumns</a></div><div class="ttdeci">void ScaleColumns(const Vector &amp;scal_vec)</div><div class="ttdoc">Method for scaling the columns of the matrix, using the Scale method for each column vector.</div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a34cf60b561c14c9bbcc7b2909d2ce71a"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a34cf60b561c14c9bbcc7b2909d2ce71a">Ipopt::MultiVectorMatrix::AddRightMultMatrix</a></div><div class="ttdeci">void AddRightMultMatrix(Number a, const MultiVectorMatrix &amp;U, const Matrix &amp;C, Number b)</div><div class="ttdoc">Multiplying a Matrix C (for now assumed to be a DenseGenMatrix) from the right to a MultiVectorMatrix...</div></div>
<div class="ttc" id="aclassIpopt_1_1Vector_html"><div class="ttname"><a href="classIpopt_1_1Vector.html">Ipopt::Vector</a></div><div class="ttdoc">Vector Base Class.</div><div class="ttdef"><b>Definition:</b> <a href="IpVector_8hpp_source.html#l00047">IpVector.hpp:48</a></div></div>
<div class="ttc" id="aclassIpopt_1_1MultiVectorMatrix_html_a41acb09e075472db051ec38cb107eb0c"><div class="ttname"><a href="classIpopt_1_1MultiVectorMatrix.html#a41acb09e075472db051ec38cb107eb0c">Ipopt::MultiVectorMatrix::operator=</a></div><div class="ttdeci">void operator=(const MultiVectorMatrix &amp;)</div><div class="ttdoc">Default Assignment Operator.</div></div>
</body>
</html>
